#pragma once

#include "../../layout/layout.hpp"
#include "qlib/all.h"

namespace qbe::tools::autoroute {

struct SelPointLineRangeModel {
  std::unordered_map<entt::entity, qbe::select::SelectPartData> select_parts_range;  //设置只能选择对象的某一部分(固定距离拉伸)
      //1表示只能选择独立的折线(即：没有拐点,只有一段)(圆角工具),
  //2表示只能选择大于两段线(圆角工具)
  //3 表示部分选择只能选择线的线段和点(自动布线拉伸)
  //5 表示部分选择下选择线的线段，不能选择点(自动布线推挤)
  //6表示只能选择骨架线(线添加折角)
  int select_ele_ctrl = 0;

  bool is_open_selet = true;
  bool is_part_select = false;  //控制部分选择还是整体选择
};

struct AdsorbFilterSelectTag {};

}  // namespace qbe::tools::autoroute